package base.thread_demo.demo08_06;

import java.util.*;

/**
 * 如何正确的使用不安全的集合,达到线程安全性,jdk提供了API
 */
public class SynchronizedCollections {
    public static void main(String[] args) {
        // 线程安全的类
        StringBuffer sb = new StringBuffer();
        Vector<String> vector = new Vector<>();
        Hashtable<String, String> hashtable = new Hashtable<>();


        // Vector是线程安全的时候才去考虑使用的，但是我还说过即使安全，我也不用你(原因:效率低)
        // 那么到底用谁呢?
        // public static <T> List<T> synchronizedList(List<T> list)
        List<String> l1 = new ArrayList<String>();// 线程不安全
        List<String> l2 = Collections.synchronizedList(new ArrayList<String>()); // 线程安全
//		Collections.synchronizedMap(map);
//		Collections.synchronizedSet(set);
    }
}
